home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 2
/
Aminet AMIGA CDROM (1994)(Walnut Creek)[Feb 1994][W.O. 44790-1].iso
/
Aminet
/
util
/
gnu
/
emacs_src.lha
/
emacs-18.58
/
src
/
s-amiga.h
< prev
next >
Wrap
C/C++ Source or Header
|
1992-09-19
|
6KB
|
217 lines
/* file for GNU Emacs running on AmigaDOS 2.04, SAS C compiler 5.10b
Copyright (C) 1985, 1986 Free Software Foundation, Inc.
This file is part of GNU Emacs.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY. No author or distributor
accepts responsibility to anyone for the consequences of using it
or for whether it serves any particular purpose or works at all,
unless he says so in writing. Refer to the GNU Emacs General Public
License for full details.
Everyone is granted permission to copy, modify and redistribute
GNU Emacs, but only under the conditions described in the
GNU Emacs General Public License. A copy of this license is
supposed to have been given to you along with GNU Emacs so you
can know your rights and responsibilities. It should be in a
file named COPYING. Among other things, the copyright notice
and this notice must be preserved on all copies. */
/*
* Define symbols to identify the version of Unix this is.
* Define all the symbols that apply correctly.
*/
#ifndef AMIGA
#define AMIGA
#endif /* AMIGA */
/* SYSTEM_TYPE should indicate the kind of system you are using.
It sets the Lisp variable system-type. */
#define SYSTEM_TYPE "amigados"
/* Define this if you want a faster redisplay. This saves a lot of CPU
time at the expense of more characters to be redrawn.
On a bitmapped display you win, with a serial line you probably lose.
*/
#define FAST_DISPLAY
/* Define this to display eight bit characters. The actual characters
that are visible can be set in init_xdisp ().
*/
#define EIGHT_BIT
/* nomultiplejobs should be defined if your system's shell
does not have "job control" (the ability to stop a program,
run some other program, then continue the first one). */
#define NOMULTIPLEJOBS
/* Define this to include various patches that allow the Amiga to dump.
This *must* be defined on the Amiga!
*/
#define AMIGA_DUMP
/* Do not use interrupt_input = 1 by default, because in 4.3
we can make noninterrupt input work properly. */
/* #undef INTERRUPT_INPUT */ /* This file borrowed from s-bsd4-3.h */
/* First pty name is /dev/ptyp0. */
/* #define FIRST_PTY_LETTER 'p' */
/*
* Define HAVE_TIMEVAL if the system supports the BSD style clock values.
* Look in <sys/time.h> for a timeval structure.
*/
#define HAVE_TIMEVAL
#define USE_UTIME
/*
* Define HAVE_SELECT if the system supports the `select' system call.
*/
#define HAVE_SELECT
/*
* Define HAVE_PTYS if the system supports pty devices.
*/
/* #define HAVE_PTYS */
/* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */
/* #define HAVE_SOCKETS */
/* But we do have socket pairs for processes ... */
#define SKTPAIR
/*
* Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate
* The 4.2 opendir, etc., library functions.
*/
/* #define NONSYSTEM_DIR_LIBRARY */
/* Define this symbol if your system has the functions bcopy, etc. */
#define BSTRING /* #define'ed later on */
/* subprocesses should be defined if you want to
have code for asynchronous subprocesses
(as used in M-x compile and M-x shell).
This is generally OS dependent, and not supported
under most USG systems. */
#define subprocesses
#define DID_REMOTE /* Use 0 length write to send eof */
/* If your system uses COFF (Common Object File Format) then define the
preprocessor symbol "COFF". */
/* #define COFF */
/* define MAIL_USE_FLOCK if the mailer uses flock
to interlock access to /usr/spool/mail/$USER.
The alternative is that a lock file named
/usr/spool/mail/$USER.lock. */
/* #define MAIL_USE_FLOCK */
/* Define CLASH_DETECTION if you want lock files to be written
so that Emacs can tell instantly when you try to modify
a file that someone else has modified in his Emacs. */
/* #define CLASH_DETECTION */
/* We use the Berkeley (and usg5.2.2) interface to nlist. */
/* #define NLIST_STRUCT */
/* The file containing the kernel's symbol table is called /vmunix. */
/* #define KERNEL_FILE "/vmunix" */
/* The symbol in the kernel where the load average is found
is named _avenrun. */
/* #define LDAV_SYMBOL "_avenrun" */
/* We use our own malloc for 2 reasons:
- To check that the 6 (INTBITS - VALBITS) of allocated data are
the same as &pure[0].
- To release unused memory to the system (SAS's malloc keeps it
till you quit)
*/
#define SYMS_SYSTEM syms_of_amiga()
#define SYSTEM_MALLOC /* But I have replaced the system malloc ... */
#define DEF_PURESIZE 130000 /* Leave space for extra code for Amiga */
#ifdef emacs
extern int puresize;
#endif
#define PURESIZE puresize /* Puresize is variable ... */
#ifdef emacs
/* Stdio must be included before redefining putchar */
#include <stdio.h>
extern char cbuffer[], *cbuffer_pos;
#define PENDING_OUTPUT_COUNT(x) (cbuffer_pos - cbuffer)
#endif
/* We divert some calls to our routines */
#define putchar(c) do { extern int noninteractive; \
if (noninteractive) putc (c, stdout); \
else emacs_putchar(c); } while(0)
#define fwrite emacs_fwrite
#define fflush emacs_fflush
#define index strchr
#define random rand
#define srandom srand
#define main emacs_main
#define select emacs_select
/* We prefer to fake these functions (thus getting the inline versions) */
#define bzero(p, n) memset(p, 0, n)
#define bcmp(x, y, n) memcmp(x, y, n)
#define bcopy(s, d, n) memmove(d, s, n)
#ifdef emacs
#include <string.h>
#endif
#define fsync(x) 0 /* Emulate fsync ... */
#ifdef emacs
#include <sys/wait.h> /* process.c doesn't have appropriate #ifdef's */
extern int amiga_process_stack_size;
#endif
/* Here are some symbols for ymakefile's benefit */
#define LIB_STANDARD src:unix/src/unix.lib lib:lc.lib lib:amiga.lib
#define START_FILES lib:c.o firstfile.o
#define C_DEBUG_SWITCH -d
#define C_OPTIMIZE_SWITCH -O
#define LD_SWITCH_SYSTEM -g
#define C_SWITCH_SYSTEM -cs -g -s -isrc:unix/include/
#define CPP_SWITCH_SYSTEM -Isrc:unix/include
#define S_SWITCH_MACHINE /* Nothing! */
#define UNEXEC amiga_dump.o
#define OBJECTS_SYSTEM amiga_clipboard.o amiga_tty.o amiga_serial.o \
amiga_screen.o amiga_menu.o amiga_malloc.o \
amiga_rexx.o simplerexx.o amiga_term.o
/* Amiga window-specific stuff */
#define VERS "1.26DG"
#define FALSE 0
#define TRUE 1